import request from './utils/request'
import ApiInfo from './index'
import qs from 'qs';


class Service {
    /**
   * 请求数据，返回信息
   */
    static post(apiInfo: ApiInfo) {
        let data = apiInfo.param;

        return request({
            url: apiInfo.serviceName + apiInfo.url,
            method: apiInfo.method,
            // 判断是否是json true
            json: true,
            // 请求参数
            data

        }).then((res) => {
            if (res.code === 200) {
                return Promise.resolve(res)
            }
            return Promise.reject(res)
        })
    }

    /**
   * form 表单提交 ，请求数据，返回信息
   */
    static postForm(apiInfo: ApiInfo) {
        let data = apiInfo.param;
        data = qs.stringify(data);
        return request({
            url: apiInfo.serviceName + apiInfo.url,
            method: apiInfo.method,
            // 判断是否是json true
            json: false,
            // 请求参数
            data

        }).then((res) => {
            if (res.access_token != null || res.code === 200) {
                return Promise.resolve(res)
            }
            return Promise.reject(res)
        })
    }

    /**
   * form 表单提交 ，请求数据，返回信息
   */
    static get(apiInfo: ApiInfo) {
        let data = apiInfo.param;
        let param = ''
        if (data) {
            param = '?'
            for (let k in data) {
                param += k + "=" + data[k] + "&"
            }
            param = param.substring(0, param.length - 1);
        }
        return request({
            url: apiInfo.serviceName + apiInfo.url + param,
            method: apiInfo.method,
            // 判断是否是json true
            json: false,

        }).then((res) => {
            if (res.code === 200) {
                return Promise.resolve(res)
            }
            return Promise.reject(res)
        })
    }

}

export default Service